Vcenter NamespaceManagement Clusters SetSpec
The Vcenter NamespaceManagement Clusters SetSpec schema contains the specification required to set a new configuration on the Cluster. This schema is applied in entirety, replacing the current specification fully.
This schema was added in vSphere API 7.0.0.0.
{
"size_hint": "string",
"floating_ip": "string",
"network_provider": "string",
"ncp_cluster_network_spec": {
"pod_cidrs": [
{
"address": "string",
"prefix": 0
}
],
"ingress_cidrs": [
{
"address": "string",
"prefix": 0
}
],
"egress_cidrs": [
{
"address": "string",
"prefix": 0
}
],
"default_ingress_tls_certificate": "string"
},
"vpc_cluster_network_spec": {
"default_private_cidrs": [
{
"address": "string",
"prefix": 0
}
]
},
"supervisor_primary_workload_network": "string",
"master_dns": [
"string"
],
"worker_dns": [
"string"
],
"master_dns_search_domains": [
"string"
],
"master_ntp_servers": [
"string"
],
"master_storage_policy": "string",
"ephemeral_storage_policy": "string",
"cns_file_config": {
"vsan_clusters": [
"string"
]
},
"login_banner": "string",
"master_dns_names": [
"string"
],
"image_storage": {
"storage_policy": "string"
},
"default_image_registry": {
"hostname": "string",
"port": 0
},
"default_image_repository": "string",
"default_kubernetes_service_content_library": "string",
"workload_ntp_servers": [
"string"
],
"cluster_proxy_config": {
"proxy_settings_source": "string",
"https_proxy_config": "string",
"http_proxy_config": "string",
"no_proxy_config": [
"string"
],
"tls_root_ca_bundle": "string"
},
"content_libraries": [
{
"content_library": "string",
"supervisor_services": [
"string"
],
"resource_naming_strategy": "string"
}
],
"count": 0,
"vsphere_pods_enabled": false,
"supervisor_services_enabled": false,
"max_concurrent_dns_forwards": 0
}
This affects the size and resources allocated to the Kubernetes API server.
For more information see: Vcenter NamespaceManagement SizingHint.
This property was added in vSphere API 7.0.0.0.
Optionally, you can edit the floating IP address that is assigned to the Supervisor in case the DHCP server fails during the Supervisor enablement process. The field is only relevant when the DHCP mode of the Supervisor management network is set with Vcenter NamespaceManagement Clusters EnableSpec.master_management_network.
Set this floating IP parameter to remediate a supervisor enablement failure in the case where it was detected that the DHCP server does not support DHCP client identifiers.
This property was added in vSphere API 7.0.3.0.
If missing or null
, the existing effective management network floating IP will not be modified.
The provider of cluster networking for this vSphere Namespaces cluster.
For more information see: Vcenter NamespaceManagement Clusters NetworkProvider.
This property was added in vSphere API 7.0.0.0.
Specification for the NSX Container Plugin cluster network.
This property was added in vSphere API 7.0.0.0.
This property is optional and it is only relevant when the value of network_provider is Vcenter NamespaceManagement Clusters NetworkProvider.NSXT_CONTAINER_PLUGIN.
Specification for the NSX VPC network.
This property was added in vSphere API 9.0.0.0.
This property is optional and it is only relevant when the value of network_provider is Vcenter NamespaceManagement Clusters NetworkProvider.NSX_VPC.
Identifier of the Supervisor Primary workload network configuration. The Supervisor Primary workload network configuration refers to a network configuration used by Supervisor Kubernetes control plane VMs to expose Kubernetes API server to users and other workloads.
This property was added in vSphere API 9.0.0.0.
If missing or null
, the current value remains unchanged.
When clients pass a value of this schema as a parameter, the property must be an identifier for the resource type: com.vmware.vcenter.namespace_management.Network
. When operations return a value of this schema as a response, the property will be an identifier for the resource type: com.vmware.vcenter.namespace_management.Network
.
List of DNS server IP addresses to use on Kubernetes API server, specified in order of preference.
This property was added in vSphere API 7.0.0.0.
If missing or null
, DNS servers set on Kubernetes API server will be cleared.
List of DNS server IP addresses to use on the worker nodes, specified in order of preference.
This property was added in vSphere API 7.0.0.0.
If missing or null
, DNS servers set on worker nodes will be cleared.
List of domains (for example "vmware.com") to be searched when trying to lookup a host name on Kubernetes API server, specified in order of preference.
This property was added in vSphere API 7.0.0.0.
If missing or null
, DNS search domains set on Kubernetes API server will be cleared.
List of NTP server DNS names or IP addresses to use on Kubernetes API server, specified in order of preference.
This property was added in vSphere API 7.0.0.0.
If missing or null
, VMware Tools based time synchronization is enabled and any set NTP servers are cleared.
Identifier of storage policy associated with Kubernetes API server.
This property was added in vSphere API 7.0.0.0.
When clients pass a value of this schema as a parameter, the property must be an identifier for the resource type: SpsStorageProfile
. When operations return a value of this schema as a response, the property will be an identifier for the resource type: SpsStorageProfile
.
Identifier of storage policy associated with ephemeral disks of all the Kubernetes Pods in the cluster.
This property was added in vSphere API 7.0.0.0.
When clients pass a value of this schema as a parameter, the property must be an identifier for the resource type: SpsStorageProfile
. When operations return a value of this schema as a response, the property will be an identifier for the resource type: SpsStorageProfile
.
Specification for configuring Cloud Native Storage file volume support on Supervisor. This feature provides support for provisioning ReadWriteMany persistent volumes on this cluster and/or external clusters.
This property was added in vSphere API 7.0.3.0.
If missing or null
, file volume support will not be enabled on this Supervisor.
Disclaimer to be displayed prior to login via the Kubectl plugin.
This property was added in vSphere API 7.0.0.0.
If missing or null
, disclaimer to be displayed prior to login via the Kubectl plugin will be cleared.
List of DNS names to associate with the Kubernetes API server. These DNS names are embedded in the CSR for TLS certificate presented by the API server. The provided value will replace existing DNS names.
This property was added in vSphere API 8.0.2.00300.
If missing or null
, existing DNS names will be cleared.
Specification for storage to be used for container images.
This property was added in vSphere API 7.0.0.0.
Default image registry to use when Kubernetes Pod container specification does not specify it as part of the container image name.
This property was added in vSphere API 7.0.0.0.
If missing or null
, default image registry will be set to Docker Hub.
Default image repository to use when Kubernetes Pod container specification does not specify it as part of the container image name.
This property was added in vSphere API 7.0.0.0.
If missing or null
, default image repository will be set to Docker Hub official repository in case of Docker Hub image registry, otherwise will be set to empty string.
This property is deprecated as of vSphere API 9.0.0.0. Use Vcenter NamespaceManagement Clusters SetSpec.content_libraries instead.
Identifier of the Content Library which holds the VM Images for vSphere Kubernetes Service.
This Content Library should be subscribed to VMware's hosted vSphere Kubernetes Service Repository.
Modifying or clearing the Content Library identifier will not affect existing vSphere Kubernetes Service clusters. However, upgrades or scale-out of existing clusters may be affected if the new Content Library doesn't have the necessary VM Images.
This property was added in vSphere API 7.0.0.0.
If missing or null
, the Content Library identifier will be cleared.
When clients pass a value of this schema as a parameter, the property must be an identifier for the resource type: com.vmware.content.Library
. When operations return a value of this schema as a response, the property will be an identifier for the resource type: com.vmware.content.Library
.
List of NTP server DNS names or IP addresses to use for workloads such as Kubernetes Cluster VMs, specified in order of preference.
This property was added in vSphere API 7.0.1.0.
If missing or null
, NTP for Kubernetes API servers will be used.
Proxy configuration that will be applied to the Supervisor. The proxy should be reachable from the management network and will be used for image pulling and container traffic exiting out of the Supervisor.
Modifying these settings will result in a restart of the container runtime. Workloads might fail to pull their images for a short period of time.
There will be no effect on the currently running containers.
This property was added in vSphere API 7.0.3.00100.
If missing or null
the settings will be inherited from the vCenter settings if available.
List of Content Libraries that will be associated a the Supervisor. This list should refer to existing Content Libraries in the vSphere inventory. These Content Libraries and the Content Library items belonging to them will be read-only across all vSphere Namespaces. If Vcenter NamespaceManagement Clusters SetSpec.default_kubernetes_service_content_library is set, the Content Library identifier will be migrated to this property.
This property was added in vSphere API 8.0.2.0.
If missing or null
, no Content Libraries will be set for the Supervisor.
Total number of control planes associated with a Supervisor. Permitted values are 1 or 3. Attempting to scale in by reducing the desired count is not supported.
This property was added in vSphere API 9.0.0.0.
If missing or null
, no change will be made to the Supervisor.
A boolean indicating whether vSphere Pods support should be enabled. It is currently only possible to enable vSphere Pod support post Supervisor enablement, not disable it.
This property was added in vSphere API 9.0.0.0.
If missing or null
, defaults to False.
A boolean indicating whether Supervisor Service support should be enabled. It is currently only possible to enable Supervisor Service support post Supervisor enablement, not disable it. Supervisor Services that rely on vSphere Pod support will not be installed unless vSphere Pod support is enabled.
This property was added in vSphere API 9.0.0.0.
If missing or null
, defaults to False.
This configuration setting applies to the DNS forwarder running on each Supervisor control plane VM. It determines the maximum number of concurrent DNS requests that can be sent to upstream Vcenter NamespaceManagement Clusters SetSpec.worker_DNS servers from the Supervisor, which is calculated by multiplying this value by the Vcenter NamespaceManagement Clusters SetSpec.count value. This value must be greater than or equal to 0. If set to 0, no limit will be imposed on the maximum number of concurrent requests that can be forwarded.
This property was added in vSphere API 9.0.0.0.
If missing or null
, the existing value will not be modified.